Psychoquake is a Quake-like multiplayer
shooter that we made in two months as a team of five students during my second year.
Letting the network part aside, another interesting issue that occured to me for the first time was how to check for collisions of fast objects. At first, I used the default unity OnTriggerEnter method, but it did not work some of the time. The reason was that the bullets were never inside the player collider in any given frame. It was so fast that it moved through it, never trigerring the collision. This was fixed by implementing a sphereCast when moving the bullet. When the bullet moves, it fires a spherecast from it's last position to its current position. If this spherecast hits an enemy, this counts as a hit.